package com.ceair.flight.refund.location.model;

import com.ceair.muservice.common.dto.AbstractBaseDO;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 
 * @author wanghaipeng
 * 2016-07-08
 * 退款单
 *
 */
public class RefundPayDO extends AbstractBaseDO implements Serializable {

    private static final long serialVersionUID = 4556948008528865865L;

    private long id;//主键ID
    private String payNo;//支付流水号
    private PayDO pay;
    private String currency;//货币
    private BigDecimal refundAmount;//退款金额
    private String bankCode;//银行代码(CHINAPAY, BILL99PAY_ACCRDT)
    private Integer status;//退款状态(1:退款中，2：成功, 3：失败)
    private String refundPayNo;//退款流水号
    private Integer payType;//1：统一快钱 2：银联 3：汇付 4：统一支付宝网银 5：统一支付宝余额 6：易宝支付 9：支付宝 10：支付宝代扣 11：易宝代扣 12：支付宝APP 20：虚拟支付 0：所有银行 -1：单一银行
    private String orderNo;//大订单编号
    private String paySuccessNo;//支付成功单号
    private String refundSuccessNo;//退款成功单号
    private Date refundSuccessDate;//退款成功日期
    private Date refundApplyDate;//退票申请日期
    private String refundApplyId;//所有的退款申请单
    private String sccode;//销售渠道代码
    private String subsccode;//子销售渠道代码
    private String pccode;//原支付渠道代码
    private String subpccode;//原子支付渠道代码
    private String notifyUrl;//退款结果异步响应给销售渠道的地址，若销售渠道不需要异步应答，则该域不传
    private String orgscdate;//销售渠道原支付订单日期yyyyMMdd
    private String remark;//退款备注
    private String resv1;//保留域1
    private String resv2;//保留域2
    private String resv3;//保留域3
    private String resv4;//保留域4
    private Integer refundType;//RefundTypeEnum枚举
    private String channelCode;// 渠道
	private String site;//站点
    private String country;//国家
    private String language;//语言
    
    
    
    
	public String getCountry() {
		return country;
	}
	public void setCountry(String country) {
		this.country = country;
	}
	public String getLanguage() {
		return language;
	}
	public void setLanguage(String language) {
		this.language = language;
	}
	public long getId() {
		return id;
	}
	public void setId(long id) {
		this.id = id;
	}
	public String getPayNo() {
		return payNo;
	}
	public void setPayNo(String payNo) {
		this.payNo = payNo;
	}
	public String getCurrency() {
		return currency;
	}
	public void setCurrency(String currency) {
		this.currency = currency;
	}
	public BigDecimal getRefundAmount() {
		return refundAmount;
	}
	public void setRefundAmount(BigDecimal refundAmount) {
		this.refundAmount = refundAmount;
	}
	public String getBankCode() {
		return bankCode;
	}
	public void setBankCode(String bankCode) {
		this.bankCode = bankCode;
	}
	public Integer getStatus() {
		return status;
	}
	public void setStatus(Integer status) {
		this.status = status;
	}
	public String getRefundPayNo() {
		return refundPayNo;
	}
	public void setRefundPayNo(String refundPayNo) {
		this.refundPayNo = refundPayNo;
	}
	public Integer getPayType() {
		return payType;
	}
	public void setPayType(Integer payType) {
		this.payType = payType;
	}
	public String getOrderNo() {
		return orderNo;
	}
	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}
	public String getPaySuccessNo() {
		return paySuccessNo;
	}
	public void setPaySuccessNo(String paySuccessNo) {
		this.paySuccessNo = paySuccessNo;
	}
	public String getRefundSuccessNo() {
		return refundSuccessNo;
	}
	public void setRefundSuccessNo(String refundSuccessNo) {
		this.refundSuccessNo = refundSuccessNo;
	}
	public Date getRefundSuccessDate() {
		return refundSuccessDate;
	}
	public void setRefundSuccessDate(Date refundSuccessDate) {
		this.refundSuccessDate = refundSuccessDate;
	}
	public Date getRefundApplyDate() {
		return refundApplyDate;
	}
	public void setRefundApplyDate(Date refundApplyDate) {
		this.refundApplyDate = refundApplyDate;
	}
	public String getRefundApplyId() {
		return refundApplyId;
	}
	public void setRefundApplyId(String refundApplyId) {
		this.refundApplyId = refundApplyId;
	}


	/**
	 * 
	 * @return 统一支付分配的渠道号
	 */
	public String getPccode() {
		return pccode;
	}

	public void setPccode(String pccode) {
		this.pccode = pccode;
	}

	/**
	 * 
	 * @return 统一支付分配的子渠道号
	 */
	public String getSubpccode() {
		return subpccode;
	}

	public void setSubpccode(String subpccode) {
		this.subpccode = subpccode;
	}

	/**
	 * 
	 * @return 销售渠道代码	
	 */
	public String getSccode() {
		return sccode;
	}

	public void setSccode(String sccode) {
		this.sccode = sccode;
	}

	/**
	 * 
	 * @return 子销售渠道代码
	 */
	public String getSubsccode() {
		return subsccode;
	}

	public void setSubsccode(String subsccode) {
		this.subsccode = subsccode;
	}
	/**
	 * 
	 * @return 退款结果异步响应给销售渠道的地址，若销售渠道不需要异步应答，则该域不传
	 */
	public String getNotifyUrl() {
		return notifyUrl;
	}
	public void setNotifyUrl(String notifyUrl) {
		this.notifyUrl = notifyUrl;
	}
	/**
	 * 
	 * @return 销售渠道原支付订单日期yyyyMMdd
	 */
	public String getOrgscdate() {
		return orgscdate;
	}
	public void setOrgscdate(String orgscdate) {
		this.orgscdate = orgscdate;
	}
	/**
	 * 
	 * @return 退款备注
	 */
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	/**
	 * 
	 * @return 保留域1
	 */
	public String getResv1() {
		return resv1;
	}
	public void setResv1(String resv1) {
		this.resv1 = resv1;
	}
	/**
	 * 
	 * @return 保留域2
	 */
	public String getResv2() {
		return resv2;
	}
	public void setResv2(String resv2) {
		this.resv2 = resv2;
	}
	/**
	 * 
	 *  @return 保留域3
	 */
	public String getResv3() {
		return resv3;
	}
	public void setResv3(String resv3) {
		this.resv3 = resv3;
	}
	/**
	 * 
	 * @return 保留域4
	 */
	public String getResv4() {
		return resv4;
	}
	public void setResv4(String resv4) {
		this.resv4 = resv4;
	}
	public Integer getRefundType() {
		return refundType;
	}
	public void setRefundType(Integer refundType) {
		this.refundType = refundType;
	}
	public String getChannelCode() {
		return channelCode;
	}
	public void setChannelCode(String channelCode) {
		this.channelCode = channelCode;
	}
	public String getSite() {
		return site;
	}
	public void setSite(String site) {
		this.site = site;
	}
	public PayDO getPay() {
		return pay;
	}
	public void setPay(PayDO pay) {
		this.pay = pay;
	}
	@Override
	public String toString() {
		return "RefundPay [id=" + id + ", payNo=" + payNo + ", currency=" + currency + ", refundAmount=" + refundAmount
				+ ", bankCode=" + bankCode + ", status=" + status + ", refundPayNo=" + refundPayNo + ", payType="
				+ payType + ", orderNo=" + orderNo + ", paySuccessNo=" + paySuccessNo + ", refundSuccessNo="
				+ refundSuccessNo + ", refundSuccessDate=" + refundSuccessDate + ", refundApplyDate=" + refundApplyDate
				+ ", refundApplyId=" + refundApplyId + ", sccode=" + sccode + ", subsccode=" + subsccode + ", pccode="
				+ pccode + ", subpccode=" + subpccode + ", notifyUrl=" + notifyUrl + ", orgscdate=" + orgscdate
				+ ", remark=" + remark + ", resv1=" + resv1 + ", resv2=" + resv2 + ", resv3=" + resv3 + ", resv4="
				+ resv4 + ", refundType=" + refundType + ", channelCode=" + channelCode + ", site=" + site + "]";
	}
	

	

}
